/**
 * 给定一个区间的集合 intervals ，其中 intervals[i] = [starti, endi] 。返回 需要移除区间的最小数量，使剩余区间互不重叠 。
 * 思路：贪心
 * 题解：https://labuladong.gitee.io/algo/3/29/99/
 */
class EraseOverlapIntervals {
    public int eraseOverlapIntervals(int[][] intervals) {
        int n=intervals.length;
        return n-intervalSchedule(intervals);
    }
    public int intervalSchedule(int[][] intervals) {
        Arrays.sort(intervals,new Comparator<int[]>() {
            public int compare(int[] a,int[] b) {
                return a[1]-b[1];
            }
        });
        int count=1;
        int len=intervals.length;
        int x_end=intervals[0][1];
        for(int[] interval:intervals) {
            int start=interval[0];
            if(start>=x_end) {
                count++;
                x_end=interval[1];
            }
        }
        return count;
        
    }

}